package com.huang.leetcode.doublePointer;

/**
 * @Author：CreateSequence
 * @Date：2020-07-26 22:46
 * @Description：删除排序数组中的重复项
 * 题解：https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/solution/shuang-zhi-zhen-shan-chu-zhong-fu-xiang-dai-you-hu/
 */
public class PB26 {
    public int removeDuplicates(int[] nums) {
        if (nums == null || nums.length == 0) {
            return 0;
        }
        int p = 0, q = 1;
        while (q < nums.length) {
            //检验pq两元素是否相等
            if (nums[p] != nums[q]) {
                //如果不等，将q元素复制至p+1
                nums[p + 1] = nums[q];
                p++;
            }
            //因为没有新的非重复项，所以只移动q不移动p
            q++;
        }
        return p + 1;
    }
}
